// 去左右空格
function myTrim(s) {
    return s.replace(/^\s+|\s+$/gm, '');
}

// 验证必填/非空
function notEmpty() {
    var fieldVal = $("#field").val();
    if (fieldVal == "") {
        $(".errorText_tel").text("不能为空");
        return false;
    } else {
        $(".errorText_tel").text("不能为空");
        return true;
    }
}

//验证手机号码
function checkMobile(t) {
    var mobile = $(t).val();
    // mobile = this.spaceStrChangeMobile(mobile);//转换手机格式
    var tip = "";
    let pass = true;

    var check_mobile = /^1[3|4|5|7|8|9][\d]{9}$/;
    if (mobile === '') {
        tip = "手机号必填";
        pass = false;
    } else if (!check_mobile.exec(mobile)) {
        tip = "手机号码格式不正确";
        pass = false;
    } else {
        tip = "";
    }
    $(t).parent().parent().parent().parent().find(".errorText_tel").html(tip);
    console.log("Mobid:" + pass)
    return pass;
}

//验证电子邮箱
function checkEmail(t) {
    var email = $(t).val();
    var check_email = /^[a-zA-Z0-9_-]+@([a-zA-Z0-9]+\.)+(com|cn|net|org)$/;
    var tip = "";
    let pass = true;

    if (email === '') {
        tip = "邮箱必填";
        pass = false;
    } else if (!check_email.exec(email)) {
        tip = "邮箱格式不正确";
        pass = false;
    } else {
        tip = "";
        pass = true;
    }

    $(t).parent().parent().parent().parent().find(".errorText_email").html(tip);

    console.log("Email:" + pass)
    return pass;
}

//参数str判断的字符串 m最小值 n最大值
function isRangeIn(str, maxnum, minnum) {
    // debugger;
    var num = parseFloat(str);
    if (num <= maxnum && num >= minnum) {
        return true;
    }
    return false;
}

// 验证证件号码
function checkIC(t) {
    var city = {
        11: "北京", 12: "天津", 13: "河北", 14: "山西", 15: "内蒙古", 21: "辽宁", 22: "吉林", 23: "黑龙江 ",
        31: "上海", 32: "江苏", 33: "浙江", 34: "安徽", 35: "福建", 36: "江西", 37: "山东", 41: "河南", 42: "湖北 ",
        43: "湖南", 44: "广东", 45: "广西", 46: "海南", 50: "重庆", 51: "四川", 52: "贵州", 53: "云南", 54: "西藏 ",
        61: "陕西", 62: "甘肃", 63: "青海", 64: "宁夏", 65: "新疆", 71: "台湾", 81: "香港", 82: "澳门", 91: "国外 "
    };
    var code = $(t).val();
    var tip = "";
    let pass = true;

    if (code == "" || code == undefined || code == null) {
        tip = "证件号码必填";
        pass = false;
    } else if (code.length != 18) {
        tip = "证件号码格式错误";
        pass = false;
    } else if (isNaN(code.substr(1, 17))) {
        tip = "前17位有非数字字符";
        pass = false;
    } else if (!city[code.substr(0, 2)]) {
        tip = "地址编码错误";
        pass = false;
    } else if (!isRangeIn(code.substr(6, 4), 2099, 1920)) {
        tip = "年份不合理";
        pass = false;
    } else if (!isRangeIn(code.substr(10, 2), 12, 1)) {
        tip = "月份错误";
        pass = false;
    } else if (!isRangeIn(code.substr(12, 2), 31, 1)) {
        tip = "日数错误";
        pass = false;
    } else {
        //18位身份证需要验证最后一位校验位
        if (code.length == 18) {
            code = code.split('');
            //∑(ai×Wi)(mod 11)
            //加权因子
            var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
            //校验位
            var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2];
            var sum = 0;
            var ai = 0;
            var wi = 0;
            for (var i = 0; i < 17; i++) {
                ai = code[i];
                wi = factor[i];
                sum += ai * wi;
            }
            var last = parity[sum % 11];
            if (parity[sum % 11] != code[17]) {
                tip = "校验位错误";
                pass = false;
            }
        }
    }
    console.log("证件号码:" + pass)
    $(t).parent().next().find(".zjhmSpan").html(tip)
    //if(!pass) alert(tip);
    return pass;
}



//验证密码
function checkPassword() {
    var password = $("#password").val();
    var pattern = /^[a-zA-Z]{8,16}$|^[0-9]{8,16}$|^[~?!@#$%^&*._]{8,16}$/, pattern1 = /^[0-9A-Za-z~?!@#$%^&*._]{8,16}$/;
    if (password === '') {
        $(".errorText_pwd").text("登录密码不能为空");
        return false;
    } else if (password.indexOf(" ") != -1) {
        $(".errorText_pwd").text("密码不允许有空格");
        return fale = false;
    } else if (!pattern1.test(password) || pattern.test(password)) {
        $(".errorText_pwd").text("8~16位数字、字母或符号组合");
        return false;
    }
    else {
        $(".errorText_pwd").text("");
        return true
    }
}

//验证金额
function valiMoney(Money) {
    var regx = /^([1-9][\d]{0,7}|0)(\.[\d]{1,2})?$/;
    if (regx.test(Money)) {
        return true;
    } else {
        return false;
    }
}

//验证姓名
function validName(insuredName) {
    var reg1 = /^[\u0391-\uFFE5]+$/;//中文
    var reg2 = /^[a-zA-Z]+$/;  //英文  
    var reg4 = "[`~!@#%$^&*()=|{}':;',\\[\\].<>/?~！@#￥……&*（）&;—|{}【】‘；：”“'。，、？]";
    if (insuredName == "") {
        alert("名称不能为空");
        return false;
    } else if (insuredName.match(reg1) || insuredName.match(reg2)) {

        return true;
    } else {
        return false;
    }
}